package com.ph.shopping.facade.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.ph.shopping.facade.profit.dto.PositionDto;
import com.ph.shopping.facade.profit.entity.UnlineManagerProfit;
import com.ph.shopping.facade.profit.vo.AgentVo;
import com.ph.shopping.facade.profit.vo.AreaVo;
import com.ph.shopping.facade.profit.vo.MerchantVo;
import com.ph.shopping.facade.profit.vo.UnLineOrderProfitVo;
import com.ph.shopping.facade.profit.vo.UnlineManagerProfitVo;

public interface IUnlineManagerProfitMapper {

	// 新增管理费分润
	int insert(List<UnlineManagerProfit> record);

	int insertSelective(UnlineManagerProfit record);

	/**
	 * 查询订单金额及编号
	 * 
	 */
	List<UnLineOrderProfitVo> queryUnLineOrder();

	/**
	 * 
	 * @Title: findMerchantRatio
	 * @Description: 通过订单编号找到商户对应的分润比例
	 * @author WQiang
	 * @date 2017年3月27日 下午3:35:50
	 * @param orderNo
	 * @return
	 */
	double findMerchantRatio(@Param("orderNo") String orderNo);

	/**
	 * 
	 * @Title: findAll
	 * @Description: 查询分润列表
	 * @author WQiang
	 * @date 2017年3月27日 下午3:38:23
	 * @param orderNo
	 * @return
	 */
	List<UnlineManagerProfitVo> findAll(@Param("orderNo") String orderNo);

	/**
	 * 
	 * @Title: getAll
	 * @Description: 导出查询的分润表
	 * @author WQiang
	 * @date 2017年3月27日 下午6:57:31
	 * @return
	 */
	List<UnlineManagerProfitVo> getAll();

	/**
	 * 
	 * @Title: batchUpdateUnLineOrderSettled
	 * @Description: 批量更新线下订单状态
	 * @author WQiang
	 * @date 2017年3月29日 上午10:54:34
	 * @param orderNo
	 * @return
	 */
	int batchUpdateUnLineOrderSettled(List<UnlineManagerProfit> profits);

	/*********************************** 对接北京所需接口 *********************************************/

	/**
	 * 
	 * @Title: getProvice
	 * @Description: 查询省
	 * @author WQiang
	 * @date 2017年3月30日 下午4:23:29
	 * @return
	 */
	public List<AreaVo> getProvice();

	/**
	 * 
	 * @Title: getCity
	 * @Description: 查询市
	 * @author WQiang
	 * @date 2017年3月30日 下午4:34:05
	 * @param id
	 * @return
	 */
	public List<AreaVo> getCity(@Param("areaId") long id);

	/**
	 * 
	 * @Title: getCounty
	 * @Description: 查询区/县
	 * @author WQiang
	 * @date 2017年3月30日 下午4:35:10
	 * @param id
	 * @return
	 */
	public List<AreaVo> getCounty(@Param("areaId") long id);

	// 查询商信息
	public List<MerchantVo> queryMerchant();

	// 查询社区代理
	public List<AgentVo> queryCommunityAgency(PositionDto positionDto);

	// 查询县代理
	public List<AgentVo> queryCountyAgency(PositionDto positionDto);

	// 查询市代理
	public List<AgentVo> queryCityAgency(PositionDto positionDto);

	public int audit(@Param("profitId") long profitId, @Param("status") int status,
			@Param("userId") long userId, @Param("tableName") String tableName,
			@Param("reason") String reason);;
}
